iT邦幫忙

DAY 16
3

強而有力的 Windows PowerShell系列 第 16

使用 Windows PowerShell 管理服務 - 變更服務的屬性

  • 分享至 

  • xImage
  •  

延續上次「使用 Windows PowerShell 管理服務 - 停止、啟動、暫停與重新啟動服務」的主題,這次接著分享如何變更服務的屬性。
使用 Set-Service cmdlet 不僅可變更本機,更可變更遠端電腦上服務的屬性。當然您要具備足夠的權限,才能進行變更操作。

以下面的命令來說,會使用 Get-Service cmdlet 取得 lanmanworkstation 服務,然後透過管線運算子(|)將該服務傳送給 Set-Service cmdlet 進行更改 lanmanworkstation 的顯示名稱之操作:

$svc = "lanmanworkstation"
Get-Service -Name $svc | Set-Service -DisplayName "我的 Workstation"
# 檢查是否更改成功
if($? -eq "True") {
  Write-Host "執行成功!" `n
  Get-Service $svc
}

除了改變顯示的名稱之外,Set-Service cmdlet 也可讓我們使用 StartupType 參數來變更服務啟動類型。啟動類型有下列幾種:
Automatic:隨作業系統啟動。
Manual:由使用者或是程式啟動。
Disabled:不啟動。

在下面的指令中,用了 3 種不同的方式先取得服務的啟動類型,然後將 W32Time 服務的啟動模式改成 Manual

$svc = "W32Time"
Write-Host "第 1 種方式"
Get-WmiObject -Query "Select * from Win32_Service Where Name = '$svc'"
Write-Host "第 2 種方式"
Get-WmiObject Win32_Service -Filter "Name = '$svc'"
Write-Host "第 3 種方式"
Get-WmiObject Win32_Service | Where-Object {$_.Name -eq "$svc"}
# 變更啟動類型為 Manual
Set-Service $svc -StartupType Manual
# 檢查執行結果
if($? -eq "True") {
  Write-Host "執行成功!" `n
  Get-WmiObject Win32_Service -Filter "Name = '$svc'"
}


上一篇
使用 Windows PowerShell 管理服務 - 停止、啟動、暫停與重新啟動服務
下一篇
使用 Windows PowerShell 找出由 Windows Installer 所安裝的軟體
系列文
強而有力的 Windows PowerShell33
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言